package com.gbk.clickhouseservicestruct.model;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.myweb.ck.mapping.ChTable;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * 卡口目录
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@ChTable(name = "tig.T_TIG_VIDEO_TOLLGATE")
public class TIG_VIDEO_TOLLGATE {

    @JSONField(name = "TollgateId")
    private String TollgateId;//卡口ID

    @JSONField(name = "Name")
    private String Name;//名称

    @JSONField(name = "Longitude")
    private Double Longitude;//经度

    @JSONField(name = "Latitude")
    private Double Latitude;//纬度

    @JSONField(name = "PlaceCode")
    private String PlaceCode;//安装地点行政区划代码

    @JSONField(name = "Place")
    private String Place;//位置名

    @JSONField(name = "Status")
    private String Status;//卡口状态

    @JSONField(name = "TollgateCat")
    private String TollgateCat;//卡口类型

    @JSONField(name = "TollgateUsage")
    private String TollgateUsage;//卡口用途

    @JSONField(name = "LaneNum")
    private Integer LaneNum;//卡口车道数

    @JSONField(name = "OrgCode")
    private String OrgCode;//管辖单位代码
    @JSONField(format = "yyyy-MM-dd HH:mm:ss", name = "ActiveTime")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date ActiveTime;//卡口启用时间
    @JSONField(format = "yyyy-MM-dd HH:mm:ss", name = "StorageTime")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date StorageTime;
    @JSONField(format = "yyyy-MM-dd HH:mm:ss", name = "UpdateTime")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date UpdateTime;
}
